Many customary designs for binary counters employ a plurality of triggered flip-flops, one for each stage of the counter. In a type of binary counter referred to as a "synchronous binary counter", the respective triggering circuit for each of the plurality of triggered flip-flops is arranged to respond to a common clock that periodically recurs. The rate at which the clock can recur is limited, since the period of the clock should exceed the longest time it takes for carries to propagate from the earliest counter stage supplying the least significant bit of the binary count to the last counter stage supplying the most significant bit of the binary count In so-called "ripple carry" procedures, the carry generated by each earlier counter stage is supplied to the succeeding counter stage before that succeeding counter stage generates a carry, so carrier propagation time increases proportionally with the number of counter stages. Only a modest amount of digital hardware is required to implement ripple carry procedures.
In so-called "look-ahead carry" procedures, the carries are not successively generated, but are generated substantially simultaneously. The carry supplied to each counter stage is obtained by decoding the previous condition of all earlier counter stages being just below the roll-over count for which a carry should be generated and then furnishing the carry in accordance with the subsequent clock signal. The use of a plural-input AND gate structure as a respective "look-ahead" decoder for each counter stage presents layout and interconnection problems in monolithic integrated circuitry, particularly with regard to the later counter stages, as the inputs from earlier counter stages to the plural-input AND gate structures grow in number. More digital hardware than a good designer likes is required for implementing the plural-input AND gate structure as the number of inputs goes up in the later counter stages. Carry generation that requires fewer inputs from earlier counter stages would be preferred if such carry generation would provide carry propagation faster than that provided by ripple carry.
Synchronous binary counters are useful in generating sequential addresses for semiconductor random-access memory (RAM) using a serial output port and can be integrated with the RAM within the same monolithic integrated circuit. In such context the layout and interconnection problems associated with known "look-ahead carry" techniques are particularly onerous. At the same time, the limitations on synchronous clock rate imposed by "ripple carry" cannot be tolerated in many applications that utilize a serial output port;